/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.cx1.model.utils;

import com.javadocmd.simplelatlng.LatLng;
import java.util.ArrayList;
import java.util.List;
import org.cx1.model.Amenity;
import org.cx1.model.FurnishType;
import org.cx1.model.Place;
import org.cx1.model.PropertyType;
import org.cx1.model.StatusType;
import org.cx1.model.deprecated.REDealType;
import org.cx1.model.deprecated.RETypeL1;
import org.cx1.model.deprecated.RETypeL2;

/**
 *
 * @author ECH
 */
public class SearchOption {
    
    private int leaseTerm = 0;
    
    private String keyword;
    
    private LatLng centerPoint;    
    private String placeID;
    
    private int updateDateOrder = 0; //CX: descending 0, ascending 1, none -1
    private int monthRateOrder = 0; //CX: descending 0, ascending 1, none -1
    
    private int page = 1;
    private int itemsPerPage = 12;
    
    private double distanceKM = 1;
    
    //CX: filters
    private ListingFilter listingFilter = new ListingFilter();
    
    private List<Place> places = new ArrayList<Place>(0);
    private List<PropertyType> propertyTypes = new ArrayList<PropertyType>(0);
    private List<FurnishType> furnishTypes = new ArrayList<FurnishType>(0);
    private List<StatusType> statusTypes = new ArrayList<StatusType>(0);
    private List<Amenity> amenities = new ArrayList<Amenity>(0);
        
    public int getUpdateDateOrder() {
        return updateDateOrder;
    }

    public void setUpdateDateOrder(int updateDateOrder) {
        this.updateDateOrder = updateDateOrder;
    }

    public int getMonthRateOrder() {
        return monthRateOrder;
    }

    public void setMonthRateOrder(int monthRateOrder) {
        this.monthRateOrder = monthRateOrder;
    }

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public int getItemsPerPage() {
        return itemsPerPage;
    }

    public void setItemsPerPage(int itemsPerPage) {
        this.itemsPerPage = itemsPerPage;
    }

    public ListingFilter getListingFilter() {
        return listingFilter;
    }

    public void setListingFilter(ListingFilter listingFilter) {
        this.listingFilter = listingFilter;
    }

    public List<Place> getPlaces() {
        return places;
    }

    public void setPlaces(List<Place> places) {
        this.places = places;
    }

    public List<PropertyType> getPropertyTypes() {
        return propertyTypes;
    }

    public void setPropertyTypes(List<PropertyType> propertyTypes) {
        this.propertyTypes = propertyTypes;
    }

    public String getKeyword() {
        return keyword;
    }

    public void setKeyword(String keyword) {
        this.keyword = keyword;
    }

    public List<StatusType> getStatusTypes() {
        return statusTypes;
    }

    public void setStatusTypes(List<StatusType> statusTypes) {
        this.statusTypes = statusTypes;
    }

    public List<Amenity> getAmenities() {
        return amenities;
    }

    public void setAmenities(List<Amenity> amenities) {
        this.amenities = amenities;
    }

    public List<FurnishType> getFurnishTypes() {
        return furnishTypes;
    }

    public void setFurnishTypes(List<FurnishType> furnishTypes) {
        this.furnishTypes = furnishTypes;
    }

    public LatLng getCenterPoint() {
        return centerPoint;
    }

    public void setCenterPoint(LatLng centerPoint) {
        this.centerPoint = centerPoint;
    }

    public int getLeaseTerm() {
        return leaseTerm;
    }

    public void setLeaseTerm(int leaseTerm) {
        this.leaseTerm = leaseTerm;
    }

    public double getDistanceKM() {
        return distanceKM;
    }

    public void setDistanceKM(double distanceKM) {
        this.distanceKM = distanceKM;
    }
}
